package com.db.common.pojo;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.util.List;

/**
 * PageObject 为业务层封装分页相关数据的一个BO对象
 *
 * @param <T> 参数化的类型(泛型)
 */
@Data
@Accessors(chain = true)
@NoArgsConstructor
@AllArgsConstructor
public class PageObject<T> implements Serializable {

    /**
     *
     */
    private static final long serialVersionUID = 1L;

    /* 当前页码值 */
    private Long pageCurrent = 1L;

    /* 页面大小 */
    private Integer pageSize = 3;

    /* 总行数(通过查询获得) */
    private Long rowCount = 0L;

    /* 总行数(通过计算获得) */
    private Long pageCount = 0L;

    /* 当前页记录 */
    private List<T> records;
}
